<?php

/**
 * @author 
 * @copyright 2008
 */
$search_data = array(
	'display' => array(
		0 => 'выкл.',
		1 => 'вкл.'
		)
);
$table = PFX."counters";
$from = 0;
$per_page = 20;
if(isset($_REQUEST['from']) and intval($_REQUEST['from']) != 0)
{
	$from = intval($_REQUEST['from']);
}
$lim_from = $from * $per_page;
$do = '';
if(isset($_REQUEST['do']) and strval($_REQUEST['do']) != '')
{
	$do = strval($_REQUEST['do']);
}
$item_id = 0;
$mod_path = $this->fetchPath($this->path);
if(isset($mod_path[0]) and intval($mod_path[0])!=0) $item_id = intval($mod_path[0]);
if($do == 'add')
{
	if(isset($_POST['item']))
	{
		$item = $_POST['item'];
		unset($_POST['item']);
	}
	if(isset($item))
	{
		foreach($item as $k=>$v)
		{
			$item[$k]=trim($v);
		}
		if($item['title']=='')
		{
			$error=true;
			$error_text['title']='Поле обязательно для заполнения!';
		}
		if($error==true)
		{
			$smarty->assign("error_text",$error_text);
			$smarty->assign("item",$item);
		}
		else
		{
			if($item['order_num']=='')
			{
				
				$max=$db->fetch_one("SELECT MAX(order_num) FROM $table");
				if($max!=false)
				{
					$item['order_num']=$max[0]+1;
				}
				else
					$item['order_num']=1;
			}
			$insert_item = array(
				'title'=>$item['title'],
				'counter'=>$item['counter'],
				'logo'=>$item['logo'],
				'display'=>$item['display'],
				'order_num'=>$item['order_num'],
				'time'=>time()
			);
			$res = $db->insert($table,$insert_item);
			if($res)
			{
				$_SESSION['message'] = "Объект удачно добавлен";
				header('location: '.ADMIN_URL.'/'.$this->full_alias);die();
			}
			else
			{
				$_SESSION['message'] = "Возникли ошибки при добавлении объекта";
				header('location: '.ADMIN_URL.'/'.$this->full_alias);die();
			}
		}
	}
}
elseif($do == 'edit')
{
	if(isset($_POST['item']))
	{
		$item = $_POST['item'];
		unset($_POST['item']);
	}
	if(isset($item))
	{
		foreach($item as $k=>$v)
		{
			$item[$k]=trim($v);
		}
		if($item['title']=='')
		{
			$error=true;
			$error_text['title']='Поле обязательно для заполнения!';
		}
		if($error==true)
		{
			$smarty->assign("error_text",$error_text);
			$smarty->assign("item",$item);
		}
		else
		{
			if($item['order_num']=='')
			{
				
				$max=$db->fetch_one("SELECT MAX(order_num) FROM $table");
				if($max!=false)
				{
					$item['order_num']=$max[0]+1;
				}
				else
					$item['order_num']=1;
			}
			$clause_item = "WHERE id = '$item_id'";
			$update_item = array(
				'title'=>$item['title'],
				'counter'=>$item['counter'],
				'logo'=>$item['logo'],
				'display'=>$item['display'],
				'order_num'=>$item['order_num']
			);
			$res = $db->update($table,$update_item,$clause_item);
			if($res)
			{
				$_SESSION['message'] = "Объект удачно обновлен";
				header('location: '.ADMIN_URL.'/'.$this->full_alias.$item_id.'.html');die();
			}
			else
			{
				$_SESSION['message'] = "Возникли ошибки при обновлении объекта";
				header('location: '.ADMIN_URL.'/'.$this->full_alias.$item_id.'.html');die();
			}
		}
	}
}
elseif($do == 'delete' and $item_id != 0)
{
	
}
elseif($do == 'turn_off' and $item_id != 0)
{
	
}
elseif($do == 'turn_on' and $item_id != 0)
{
	
}
$items = $db->fetch_array("SELECT SQL_CALC_FOUND_ROWS * FROM $table ORDER BY order_num LIMIT $lim_from,$per_page");
$qnty = $db->fetch_one(QUANTITY);
if($items!=false and !empty($items))
{
	per_page_navigation($qnty['kolvo'],$per_page,$lim_from);
	foreach($items as $k=>$v)
	{
		$items[$k]['display_title'] = $search_data['display'][intval($v['display'])];
	}
	$smarty->assign("items",$items);
}
if($item_id != 0)
{
	$item = $db->fetch_one("SELECT * FROM $table WHERE id = '$item_id'");
	if($item != false and !empty($item))
	{
		$smarty->assign("item",$item);
		$do = 'edit';
	}
}
else $do = 'add';
$smarty->assign("do",$do);
?>